<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
</head>

<body>
    <div id="app">
        <button @click="list.push(100)">给数组加一个100</button>
        <button @click="num += 100">改变num</button>
        <p>list： {{ list }}</p>

        <!-- 现在我们要的这个数据，有没有依赖别的数据？有，依赖了list -->
        <!-- 而且要计算得到 -->
        <!-- 而且如果数组了也要重新计算得到结果 -->
        <!-- 所以应该用计算属性 -->

        <!-- 计算属性的本质虽然是函数，但是用的时候跟data中的数据一样用 -->
        <!-- data中的属性可以怎么用，计算属性就可以怎么用 -->
        <p>数组里的所有和是： {{ arrSum }}</p>
        <p>数组里的所有和是： {{ arrSum }}</p>
        <p>数组里的所有和是： {{ arrSum }}</p>
        <p>数组里的所有和是： {{ arrSum }}</p>
        <p>数组里的所有和是： {{ arrSum }}</p>
        <p>数组里的所有和是： {{ arrSum }}</p>
        <p>数组里的所有和是： {{ arrSum }}</p>
    </div>

    <script src="./vue.js"></script>

    <script>
        new Vue({
            el: '#app',
            data: {
                list: [10, 20, 30, 40, 50, 60, 70, 80, 90],
                num: 200
            },

            // 写计算属性的地方
            computed: {

                // 计算属性本质是一个函数
                arrSum() {

                    console.log('arrSum调用了')

                    let sum = 0
                    this.list.forEach(v => sum += v)

                    sum += this.num 
                    return sum
                }
            }
        })
    </script>
</body>

</html>